﻿/*
Nombre:                         AgregarAccion
Descripcion:                    Accion que agrega un movimiento a la base de datos utilizando la tecnologia LINQ
Dependencias:                 
Fecha de creación:              4/27/2009 6:09:11 PM
Autor:                          VMORALES
Fecha de modifcación:         
Responsable:                  
Num. de modifcación:            0
*/

#region Imports

using Entidades = Electrocucaracha.AdminPersonal.DAO.Entidades;
using Electrocucaracha.AdminPersonal.DAO.Acciones;
using System;
using Common.Logging;

#endregion

namespace Electrocucaracha.AdminPersonal.DAO.Linq.Acciones.Movimiento
{
    /// <summary>
    /// Accion que agrega un movimiento a la base de datos utilizando la tecnologia LINQ
    /// </summary>
    class AgregarAccion : Accion
    {
        #region Constantes

        #endregion

        #region Miembros

        #endregion

        #region Propiedades

        #endregion

        #region Constructores

        AgregarAccion()
        {
            this.nombreClase = "Movimiento.AgregarAccion";
            this.logLevel = LogLevel.Debug;
        }//AgregarAccion

        #endregion

        #region Funciones

        #endregion

        #region IAccion

        /// <summary>
        /// Accion que agrega un movimiento a la base de datos el moviento solicitado
        /// </summary>
        public override void Ejecutar()
        {
            parametros[OUTPUT] = false;
            Entidades.MovimientoDTO movimiento = parametros[INPUT] as Entidades.MovimientoDTO;
            if (movimiento != null)
            {
                dbAdminPersonalDataContext dbAdmin = new dbAdminPersonalDataContext();
                Nullable<int> id = new Nullable<int>(movimiento.Id);
                dbAdmin.AgregarMovimiento(ref id, movimiento.IdCuenta,movimiento.IdCategoria,movimiento.Descripcion,movimiento.Monto,movimiento.Fecha );
                movimiento.Id = id.Value;
                parametros[INPUT] = movimiento;
                parametros[OUTPUT] = true;
            }
        }//Ejecutar

        #endregion

    }//AgregarAccion
}//Electrocucaracha.AdminPersonal.DAO.Linq.Acciones.Movimiento